package com.lxk.service;

import com.lxk.pojo.Moment;
import com.lxk.vo.MomentComShowModel;
import com.lxk.vo.MomentModel;
import com.lxk.vo.PageModel;

/**
 * @author JohnSoybean
 * @create 2020/4/3 16:36
 * @description
 */
public interface MomentService {

    /**
     * 获取待审核动态总页数
     * @param num
     * @return
     */
    Integer getUncheckedTotalPages(Integer num);

    /**
     * 获取待审核动态分页
     * @param pageIndex
     * @param num
     * @param totalPages
     * @param sort
     * @param order
     * @return
     */
    PageModel<Moment> selUncheckedMomentPage(Integer pageIndex, Integer num, Integer totalPages, Integer sort, Integer order);

    /**
     * 获取待审核动态总页数
     * @param num
     * @return
     */
    Integer getTotalPages(Integer num);

    /**
     * 获取待审核动态分页
     * @param pageIndex
     * @param num
     * @param totalPages
     * @param sort
     * @param order
     * @return
     */
    PageModel<MomentModel> selMomentPage(Integer pageIndex, Integer num, Integer totalPages, Integer sort, Integer order);


    /**
     * 审核是否通过动态
     * @param momentId
     * @param code 1是 2否 -1删除
     */
    void checkMoment(Integer momentId, Integer code);


    /**
     * 按ID查找动态
     * @param momentId
     * @return
     */
    Moment selMomentById(Integer momentId);

    /**
     * 更新动态
     * @param moment
     */
    void updMoment(Moment moment);

    /**
     * 获取评论总页数
     * @param num
     * @return
     */
    Integer getComTotalPages(Integer num, Integer momentId);

    /**
     * 动态评论展示 - 分页
     * @param pageIndex
     * @param num
     * @param totalPages
     * @return
     */
    PageModel<MomentComShowModel> getComList(Integer pageIndex, Integer num, Integer totalPages, Integer momentId);

    /**
     * 删除动态评论id
     * @param momentComId
     */
    void deleteMomentComment(Integer momentComId);

}
